1. Field of the Invention
The present invention relates to a method of computing a correction value for correcting a geometric error of a machine tool having translational axes and rotational axes and a program thereof.
2. Description of Related Art
FIG. 1 is a schematic diagram of an example of a machine tool having three translational axes and two rotational axes (five-axis machining center, five-axis machine). A spindle head 2 is capable of two-degree-of-freedom translational movement with respect to a bed 1 by translational X and Z axes that are orthogonal to each other. A table 3 is capable of one-degree-of-freedom rotational movement with respect to a cradle 4 by a rotational C axis. The cradle 4 is capable of one-degree-of-freedom rotational movement with respect to a trunnion 5 by a rotational A axis. The A and C axes are orthogonal to each other. The trunnion 5 is capable of one-degree-of-freedom translational movement with respect to the bed 1 by a translational Y axis that is orthogonal to the X and Z axes. Movement on each of the axes is driven by a servo motor (not shown) controlled by a numerical control system. Accordingly, an object to be machined (workpiece) is fixed onto the table 3, and the spindle head 2 with a tool attached thereto is allowed to rotate. A relative position between the workpiece and the tool is controlled, thereby machining the workpiece.
Factors influencing motion accuracy of the five-axis machine are, for example, geometric errors among the axes such as an error in the center position of the rotational axis (an offset from an intended position) and an error in the inclination of the rotational axis (perpendicularity or parallelism between the axes). Presence of a geometric error impairs motion accuracy of the machine tool and further impairs machining accuracy on the workpiece. Accordingly, the geometric error must be reduced by adjustment, but it is difficult to reduce the error to zero. However, control for correcting the geometric error enables highly accurate machining.
Japanese Patent Application Publication No. 2004-272887 (JP 2004-272887 A) and Japanese Patent Application Publication No. 2009-104317 (JP 2009-104317 A) disclose measures for correcting geometric errors. The measure disclosed in JP 2004-272887 A converts the position of a tool center point into the position on each translational axis in consideration of geometric errors of a machine tool, sets the position as a command position, and thereby allows correction of a positional error in the tool center point due to geometric errors. On the other hand, the measure of JP 2009-104317 A performs control while setting a differential value between the position of a tool center point with respect to a workpiece in a case with geometric errors and the position of the tool center point in a case with no geometric errors as a correction value for a translational axis, thereby allowing correction of the positional error of the tool center point due to the geometric errors.
The correction measure of JP 2004-272887 A corrects the positional error of the tool center point. However, geometric errors actually cause not only the positional error of the tool center point, but also an orientation error of the tool. For example, in the five-axis machine in FIG. 1, in a case that a flattening machining on the workpiece 7 is performed by the spindle head 2 with a square end mill 6 attached thereto as shown in FIG. 2, if the table 3 is inclined with respect to the spindle head 2 due to a rotational geometric error α around the X axis, a center surface of the square end mill 6 has an orientation error. Here, if the flattening machining is performed with the direction from the face to the back of the sheet of FIG. 2 defined as a feed direction and with the direction of a thick arrow P defined as a pick direction, positioning command values in the pick direction of the square end mill 6 are a series of a plurality of points at intervals to each other. In such a case, those correction measures correct the tool center point from each of the positioning command values to a point Q inclined at a slope α with respect to the Y axis. However, since the positioning command values have intervals to each other, the corrected point Q reflects the intervals, resulting in steps on the machined surface as shown in FIG. 2.
JP 2009-104317 A suggests that its correction measure obtains a tool orientation vector TVG=[i j k] with respect to the workpiece in a case with geometric errors, calculates correction values Δa and Δc of the rotational axes (the A and C axes) by use of following Mathematical 1 with the vector TVG and a command value a of the A axis, performs control with corrected command values of the rotational axes, and thereby allows correction of the tool orientation error.
                    {                                                                              Δ                  ⁢                                                                          ⁢                  a                                =                j                                                                                                          Δ                  ⁢                                                                          ⁢                  c                                =                                  -                                      i                                          sin                      ⁢                                                                                          ⁢                      a                                                                                                                              Mathematical        ⁢                                  ⁢        1            
However, the measure of JP 2009-104317 A is not capable of calculation by the above Mathematical 1 when the command value a of the A axis is 0. Further, the calculation results in an extremely large value when command value a of A axis is an approximate value of 0, which means 0 is a so-called singularity. In such a case, the measure cannot appropriately obtain a correction value and requires an exception handling, which in turn is a problem of this measure. Such a problem occurs for the fundamental reason that the five-axis machine is configured to have three translational axes and two rotational axes and is thus not capable of managing all the errors in the space of six-degrees-of-freedom (three degrees of freedom in translation and three degrees of freedom in rotation) due to geometric errors. Furthermore, the computation of the above-described tool orientation vector TVG requires almost the same amount of calculation as the computation of a correction value for the positional error of the tool center point. This also results in a problem of an increased calculation amount for correction of the orientation error of the tool.